package com.harveyspace.aes.social;

import com.harveyspace.aes.social.battlenet.OauthBattleNet;
import com.harveyspace.aes.social.clashroyale.OauthClashRoyale;
import com.harveyspace.aes.social.facebook.OauthFacebook;
import com.harveyspace.aes.social.instagram.OauthInstagram;
import com.harveyspace.aes.social.qq.OauthQQ;
import com.harveyspace.aes.social.sina.OauthSina;
import com.harveyspace.aes.social.steam.OauthSteam;
import com.harveyspace.aes.social.twitter.OauthTwitter;
import com.harveyspace.aes.social.weixin.OauthWeixin;

/**
 * 社交平台管理工厂
 *
 * @Author <a href="harveyer@163.com">harvey</a>
 * @date 2018/2/9
 */
public class SocialManagerFactory {

    public static Oauth weixin(SocialConfig config) {
        return new OauthWeixin(config);
    }

    public static Oauth qq(SocialConfig config) {
        return new OauthQQ(config);
    }

    public static Oauth weibo(SocialConfig config) {
        return new OauthSina(config);
    }

    public static Oauth steam(SocialConfig config) {
        return new OauthSteam(config);
    }

    public static Oauth fackbook(SocialConfig config) {
        return new OauthFacebook(config);
    }

    public static Oauth twitter(SocialConfig config) {
        return new OauthTwitter(config);
    }

    public static Oauth instagram(SocialConfig config) {
        return new OauthInstagram(config);
    }

    public static Oauth clashRoyale(SocialConfig config) {
        return new OauthClashRoyale(config);
    }

    public static Oauth battleNet(SocialConfig config) {
        return new OauthBattleNet(config);
    }
}
